--RENAME REQUESTTYPE TO DATATYPE

exec sp_rename 'dbo.RequestType', 'DataType'

--CREATE table requestType--

CREATE TABLE [dbo].[RequestType] (
    [Id]          INT          NOT NULL,
    [Description] VARCHAR (50) NULL
);


--INSERT DATA INTO IT--

INSERT INTO [dbo].[RequestType] ([Id] ,[Description]) VALUES (1, 'Genisis2 Data Request ')
INSERT INTO [dbo].[RequestType] ([Id],[Description]) VALUES (2, 'VINCI Data Request ')


UPDATE RequestType  
Set Description ='VINCI Data Request'
where id=1


uPDATE RequestType 
Set Description='Transfer to VINCI Request'
where id=2


--UPDATE Role_Type Table--

UPDATE [GENISIS_DB].[dbo].[Role_Type] set Role_Name='Genisis2 Manager', Role_Description='Genisis2 Manager' where Role_Type_id=3
UPDATE [GENISIS_DB].[dbo].[Role_Type] set Role_Name='VINCI Manager', Role_Description='VINCI Manager' where Role_Type_id=4



--CHANGE SourceId to NULL in Request and Requesthistory--


ALTER TABLE RequestHistory
ALTER COLUMN SourceId INT NULL;

ALTER TABLE Request
ALTER COLUMN SourceId INT NULL;


--Add new column to request and requestHistory

 ==add it first as null==

ALTER TABLE Request
ADD DataTypeId int null;

ALTER TABLE RequestHistory
ADD DataTypeId int null;


--insert data into DataTypeId--

UPDATE Request
Set DataTypeId=RequestTypeId
where RequestTypeId=1

UPDATE Request
Set DataTypeId=RequestTypeId
where RequestTypeId=2


UPDATE RequestHistory
Set DataTypeId=RequestTypeId
where RequestTypeId=1

UPDATE RequestHistory
Set DataTypeId=RequestTypeId
where RequestTypeId=2



--Set RequestTypeId to 1--

UPDATE RequestHistory
Set RequestTypeId=1
Where RequestTypeId=2

UPDATE Request
Set RequestTypeId=1
Where RequestTypeId=2


--CREATE TABLE FOR FILE ATTACHMENT--

 CREATE TABLE [dbo].[Attachment](
[AttachmentId] [int] NOT NULL,
[RequestId] [int] NOT NULL,
[StatusId] [int] NOT NULL,
[FileName] [varchar](128) NOT NULL,
[FileType] [varchar](50) NOT NULL,
[FileData] [varbinary](max) NOT NULL,
[TaskId] [varchar](50) NULL,
[ActionType] [varchar](50) NULL,
[CreatedBy] [varchar](50) NOT NULL,
[CreatedOn] [datetime] NULL,
CONSTRAINT [PK_Attachment] PRIMARY KEY CLUSTERED 
(
[AttachmentId] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
ALTER TABLE [dbo].[Attachment] WITH CHECK ADD CONSTRAINT [FK_Attachment_Attachment] FOREIGN KEY([StatusId])
REFERENCES [dbo].[WorkflowStatus] ([Id])
GO
ALTER TABLE [dbo].[Attachment] CHECK CONSTRAINT [FK_Attachment_Attachment]
GO
ALTER TABLE [dbo].[Attachment] WITH CHECK ADD CONSTRAINT [FK_Attachment_Request] FOREIGN KEY([RequestId])
REFERENCES [dbo].[Request] ([Id])
GO
ALTER TABLE [dbo].[Attachment] CHECK CONSTRAINT [FK_Attachment_Request]



UPDATE RequestType
Set Description ='VINCI Data Request'
where id=1


uPDATE RequestType
Set Description='Transfer to VINCI Request'
where id=2




---changes for foreign key--

ALTER TABLE RequestType
ADD PRIMARY KEY (Id);



ALTER TABLE Request
DROP CONSTRAINT Fk_RqId --WHATEVER THE CONSTRAINT NAME IS IN THE DATABASE--

ALTER TABLE [dbo].[Request]  WITH CHECK ADD  CONSTRAINT [Fk_RqId] FOREIGN KEY([RequestTypeId])
REFERENCES [dbo].[RequestType] ([Id])
GO

/****** Object:  Index [PK_RequestType]    Script Date: 9/28/2017 1:27:02 PM ******/
ALTER TABLE DataType
DROP CONSTRAINT PK_RequestType

ALTER TABLE [dbo].[DataType] ADD  CONSTRAINT [PK_DataType] PRIMARY KEY CLUSTERED 
(
	[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, SORT_IN_TEMPDB = OFF, IGNORE_DUP_KEY = OFF, ONLINE = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
GO



ALTER TABLE [dbo].[Request]  WITH CHECK ADD  CONSTRAINT [Fk_datatypeId] FOREIGN KEY([DataTypeId])
REFERENCES [dbo].[DataType] ([Id])
GO



update datatype
set Description='Aggregate Data'
where id=1

update datatype
set Description='Detail Data'
where id=2

--delete all other fks in requesthistory except with id to request--